home *** CD-ROM | disk | FTP | other *** search
/ .net 2002 March / DotNetMagazine-Issue107-Coverdisc-NET107-02-03-PCMac.bin / pc / PC Software / free_browsing / DavesQckSearchDbar3-14 / dqsd.exe / searches / rnum.xml < prev    next >
Text File  |  2002-09-06  |  3KB  |  98 lines

  1. <search function="rnum">
  2.   <name>Roman Numeral Generator</name>
  3.   <description>
  4.     Generate Roman numeral equivalents to decimal numbers.<br/>
  5.     <div class="helpboxDescLabels">Usage:</div>
  6.     <table class="helpboxDescTable">
  7.       <tr><td>rnum <<i>decimal number between 1 and 3999</i>></td></tr>
  8.     </table>
  9.     <a class="helpboxDescLabels">Example:</a><br/>
  10.     <table class="helpBoxDescTable">
  11.       <tr><td class="helpboxDescColumns">rnum 1996</td></tr>
  12.     </table>
  13.   </description>
  14.   <category>Functions</category>
  15.   <contributor>Monty Scroggins</contributor>
  16.   <script><![CDATA[
  17.  
  18.   function rnum(number) 
  19.   {
  20.     if( nullArgs("rnum",number) )
  21.       return false;
  22.  
  23.     if((parseInt(number) < 4000) && (parseInt(number) > 0))
  24.     {
  25.       var ones_numerals = new Array();
  26.       ones_numerals[0] = "";
  27.       ones_numerals[1] = "I";
  28.       ones_numerals[2] = "II";
  29.       ones_numerals[3] = "III";
  30.       ones_numerals[4] = "IV";
  31.       ones_numerals[5] = "V";
  32.       ones_numerals[6] = "VI";
  33.       ones_numerals[7] = "VII";
  34.       ones_numerals[8] = "VIII";
  35.       ones_numerals[9] = "IX";
  36.  
  37.       var tens_numerals = new Array();
  38.       tens_numerals[0] = "";
  39.       tens_numerals[1] = "X";
  40.       tens_numerals[2] = "XX";
  41.       tens_numerals[3] = "XXX";
  42.       tens_numerals[4] = "XL";
  43.       tens_numerals[5] = "L";
  44.       tens_numerals[6] = "LX";
  45.       tens_numerals[7] = "LXX";
  46.       tens_numerals[8] = "LXXX";
  47.       tens_numerals[9] = "XC";
  48.  
  49.       var hundreds_numerals = new Array();
  50.       hundreds_numerals[0] = "";
  51.       hundreds_numerals[1] = "C";
  52.       hundreds_numerals[2] = "CC";
  53.       hundreds_numerals[3] = "CCC";
  54.       hundreds_numerals[4] = "CD";
  55.       hundreds_numerals[5] = "D";
  56.       hundreds_numerals[6] = "DC";
  57.       hundreds_numerals[7] = "DCC";
  58.       hundreds_numerals[8] = "DCCC";
  59.       hundreds_numerals[9] = "CM";
  60.  
  61.       var thousands_numerals = new Array();
  62.       thousands_numerals[0] = "";
  63.       thousands_numerals[1] = "M";
  64.       thousands_numerals[2] = "MM";
  65.       thousands_numerals[3] = "MMM";
  66.  
  67.  
  68.       var new_num = number;
  69.       var thousands = Math.floor(new_num / 1000);
  70.       new_num -= thousands * 1000;
  71.       var hundreds = Math.floor(new_num / 100);
  72.       new_num -= hundreds * 100;
  73.       var tens = Math.floor(new_num / 10);
  74.       new_num -= tens * 10;
  75.       var ones = Math.floor(new_num / 1);
  76.       var array = new Array(thousands,hundreds,tens,ones);
  77.       var numeral = "";
  78.       numeral += thousands_numerals[array[0]];
  79.       numeral += hundreds_numerals[array[1]];
  80.       numeral += tens_numerals[array[2]];
  81.       numeral += ones_numerals[array[3]];
  82.       document.deff.q.value = numeral;
  83.     }
  84.     else
  85.     {
  86.       alert('you must enter a valid number between 0 and 4000.');
  87.     }
  88.   }//function makenumeral
  89.  
  90.   ]]></script>
  91.  
  92.   <copyright>
  93.     Copyright (c) 2002 David Bau
  94.     Distributed under the terms of the
  95.     GNU Public License, Version 2 (http://www.gnu.org/copyleft/gpl.txt)
  96.   </copyright>
  97. </search>
  98.